SingleSelector

class SingleSelector<T>(selectedItem: T?, safeChanges: Boolean) : Selector<T>

Realization of Selector with one or without selected element. This realization will always have empty selectedItems when nothing selected and one element in selectedItems when something selected. Contains selectedItem value for simple access to currently selected item.

On calling of toggleSelection previous selection will be erased and itemUnselected will emit this element.

Parameters

safeChanges

Set to false to disable using of mutex for synchronizing changes on toggleSelection

Constructors

Link copied to clipboard
fun <T> SingleSelector(selectedItem: T? = null, safeChanges: Boolean = true)

Functions

Link copied to clipboard
open suspend override fun clearSelection()
Link copied to clipboard
open suspend override fun forceDeselect(element: T)
Link copied to clipboard
open suspend override fun forceSelect(element: T)
Link copied to clipboard
open suspend override fun toggleSelection(element: T)

Properties

Link copied to clipboard
open override val itemSelected: SharedFlow<T>
Link copied to clipboard
open override val itemUnselected: SharedFlow<T>
Link copied to clipboard
var selectedItem: T?
Link copied to clipboard
open override val selectedItems: List<T>